package cn.iocoder.yudao.module.crossborder.platform.dal.dataobject.platformwebhooklog;

import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 跨境电商平台Webhook事件日志 DO
 *
 * @author 芋道源码
 */
@TableName("crossborder_platform_webhook_log")
@KeySequence("crossborder_platform_webhook_log_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PlatformWebhookLogDO extends BaseDO {

    /**
     * 日志编号
     */
    @TableId
    private Long id;
    /**
     * Webhook配置编号
     */
    private Long webhookId;
    /**
     * 平台编号
     */
    private Long platformId;
    /**
     * 店铺编号
     */
    private Long storeId;
    /**
     * 事件ID
     */
    private String eventId;
    /**
     * 事件类型
     */
    private String eventType;
    /**
     * 请求头
     */
    private String requestHeaders;
    /**
     * 请求体
     */
    private String requestBody;
    /**
     * 响应状态码
     */
    private Integer responseStatus;
    /**
     * 响应体
     */
    private String responseBody;
    /**
     * 处理状态（0待处理 1处理中 2处理成功 3处理失败）
     */
    private Integer processStatus;
    /**
     * 处理时间
     */
    private LocalDateTime processTime;
    /**
     * 处理时长（毫秒）
     */
    private Integer processDuration;
    /**
     * 错误信息
     */
    private String errorMsg;
    /**
     * 重试次数
     */
    private Integer retryCount;
    /**
     * 业务类型
     */
    private String businessType;
    /**
     * 业务数据ID
     */
    private Long businessId;
    /**
     * 来源IP
     */
    private String sourceIp;
    /**
     * 用户代理
     */
    private String userAgent;


}
